-- ******************************************************************
-- CISCO-TPC-MIB.my: Third Party Copy : XCOPY Engine
--
-- August 2004, Rahul Chari, Srini Kode
--
-- Copyright (c) 2002, 2003 by cisco Systems, Inc.
-- All rights reserved.
--
-- ******************************************************************CISCO-TPC-MIB DEFINITIONS::=BEGINIMPORTSMODULE-IDENTITY,OBJECT-TYPE,Unsigned32,Counter32,Gauge32FROM SNMPv2-SMI
MODULE-COMPLIANCE,OBJECT-GROUPFROM SNMPv2-CONF
RowStatus,TEXTUAL-CONVENTIONFROM SNMPv2-TC
FcNameIdOrZeroFROM CISCO-ST-TC
vsanIndex FROM CISCO-VSAN-MIB
ciscoMgmt FROM CISCO-SMI
PhysicalIndexFROM ENTITY-MIB;ciscoTpcMIB MODULE-IDENTITYLAST-UPDATED"200501240000Z"ORGANIZATION"Cisco Systems, Inc."CONTACT-INFO
" Cisco Systems
Customer Service
Postal: 170 W Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553 -NETS
E-mail: cs-san@cisco.com"DESCRIPTION"The MIB module for Third Party Copy(TPC):
Third Party Copy derives its name from the fact
that there are three entities involved in the
process of copying data either for backup operations
or restore operations. The three entities:
- entity originating the copy commands
- data source for the copy
- data destination for the copy.
The entity originating the copy commands to perform
the data transfer can use the SCSI Extended Copy
(XCOPY).
The TPC feature exposes a disk target with
Logical Unit Number(LUN) 0 that is capable of
processing the SCSI Extended Copy Command (XCOPY)
to transfer data from a specified source to a
specified destination. On receiving the XCOPY
command, the TPC target performs the actual data
transfer from the data source to the data
destination on behalf of the entity issuing the
XCOPY command.
The MIB provides an interface to configure the
TPC targets. The user specifies the module and
the VSAN on which the TPC feature needs to be
configured. Once the feature has been configured
target ports are created on the specified module
and VSAN that are XCOPY capable. Any application
that can source a XCOPY command can use these
targets to perform data movement.
Acronyms
The following acronyms are used in this document:
XCOPY:
SCSI Extended Copy Command.
TPC:
Third Party Copy.
LUN:
Logical Unit Number.
VSAN:
Virtual Storage Area Network. "REVISION"200501240000Z"DESCRIPTION"Initial version of this MIB module. "::={ ciscoMgmt 460}ciscoTpcNotification OBJECTIDENTIFIER::={ ciscoTpcMIB 0}ciscoTpcObjects OBJECTIDENTIFIER::={ ciscoTpcMIB 1}ciscoTpcMIBConformance OBJECTIDENTIFIER::={ ciscoTpcMIB 2}ciscoTpcConfig OBJECTIDENTIFIER::={ ciscoTpcObjects 1}-- Textual ConventionsTpcTargetState ::=TEXTUAL-CONVENTIONSTATUScurrentDESCRIPTION"Represents the state of the TPC target.
'active' - indicates that the TPC target is
ready to process XCOPY requests.
'initializing' - indicates that the TPC target is
not ready.
'error' - indicates that the TPC target was
brought down due to error
conditions. "SYNTAXINTEGER{active(1),initializing(2),error(3)
}--
-- Third Party Copy Module Table
--ctpcModuleTable OBJECT-TYPESYNTAXSEQUENCEOF CtpcModuleEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"A table listing the modules on which TPC functionality
can be configured by the user. Each such module is
identified by ctpcModuleId.
The agent creates an entry in this table on
detecting a module that can support TPC
functionality. Similarly, it will remove the entry
when the TPC functionality cannot be supported on
this module any longer.
The entry in the ctpcVsanTable can only be created
on a module present in this table."::={ ciscoTpcConfig 1}ctpcModuleEntry OBJECT-TYPESYNTAX CtpcModuleEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"A conceptual row in the ctpcModuleTable. Each row
represents a TPC capable module."INDEX{ ctpcModuleId }::={ ctpcModuleTable 1}
CtpcModuleEntry ::=SEQUENCE{
ctpcModuleId PhysicalIndex}ctpcModuleId OBJECT-TYPESYNTAXPhysicalIndexMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"This object specifies the physical index of the
module on which TPC can be configured by the user.
This is same as the entPhysicalIndex of the module."::={ ctpcModuleEntry 1}--
-- Third Party Copy Vsan Table
--ctpcVsanTable OBJECT-TYPESYNTAXSEQUENCEOF CtpcVsanEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"A table listing all the VSANs for which TPC
functionality has been configured by the user. The
user configures TPC functionality on a per VSAN basis
by specifying the module, identified by ctpcModuleId,
on which to configure TPC and the VSAN number.
An entry can be created in this table only if an
entry exists in ctpcModuleTable for this module.
If a management application attempts to create
a row in this table corresponding to a module that
does not exist in ctpcModuleTable table then the
agent would respond with an error-status set to
'inconsistentValue'.
Once an entry is created, even if this module no
longer exists in the ctpcModuleTable, still
this entry is not deleted. The entry can only be
deleted by setting ctpcVsanRowStatus to 'delete'."::={ ciscoTpcConfig 2}ctpcVsanEntry OBJECT-TYPESYNTAX CtpcVsanEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"An entry in the TPC VSAN table for each configured
VSAN on this module."INDEX{ ctpcModuleId, vsanIndex }::={ ctpcVsanTable 1}
CtpcVsanEntry ::=SEQUENCE{
ctpcVsanRowStatus RowStatus}ctpcVsanRowStatus OBJECT-TYPESYNTAXRowStatusMAX-ACCESSread-createSTATUScurrentDESCRIPTION"This object controls and reflects the status of rows
in this table. When the agent successfully creates
the entry, this object is set to 'active' by the
agent.
Deleting an entry from this table, unconfigures the
TPC functionality on the module specified by the
corresponding instance index 'ctpcModuleId'
on the VSAN represented by the corresponding
instance index 'vsanIndex'
To delete an entry, set this object value to
'destroy'."::={ ctpcVsanEntry 1}--
-- Third Party Copy Target Table
--ctpcTargetTable OBJECT-TYPESYNTAXSEQUENCEOF CtpcTargetEntry
MAX-ACCESSnot-accessibleSTATUScurrent
DESCRIPTION"A list of all the TPC targets that are configured
on this module and on this VSAN. There can be more
than one TPC target in the same VSAN on a module.
The number of TPC targets is implementation specific.
Each TPC target has a unique node world-wide-name,
identified by ctpcTargetNodeName and a unique port
world-wide-name, identified by ctpcTargetPortName.
Each TPC target exposes a single LUN (LUN 0) that is
XCOPY capable and is only concerned with moving data
in its own VSAN.
Once an entry is created in ctpcVsanTable, one or
more entries are created in this table by agent.
Similarly the entries in this table are deleted
when the entry with the same ctpcModuleId and
vsanIndex is deleted from the ctpcVsanTable."::={ ciscoTpcConfig 3}ctpcTargetEntry OBJECT-TYPESYNTAX CtpcTargetEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"An entry in the TPC target table for each TPC target
in this VSAN on this module."INDEX{ ctpcModuleId, vsanIndex, ctpcTargetIndex }
::={ ctpcTargetTable 1}
CtpcTargetEntry ::=SEQUENCE{
ctpcTargetIndex Unsigned32,
ctpcTargetNodeName FcNameIdOrZero,
ctpcTargetPortName FcNameIdOrZero,
ctpcTargetState TpcTargetState,
ctpcTargetNumXcopies Counter32,
ctpcTargetMinXcopy Gauge32,
ctpcTargetMaxXcopy Gauge32,
ctpcTargetAvgKbPerSec Gauge32}ctpcTargetIndex OBJECT-TYPESYNTAXUnsigned32MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"The unique id number associated with the TPC target.
This id number is unique within the vsan in which
the TPC target is configured."::={ ctpcTargetEntry 1}ctpcTargetNodeName OBJECT-TYPE
SYNTAXFcNameIdOrZeroMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The TPC target's node world-wide-name."::={ ctpcTargetEntry 2}ctpcTargetPortName OBJECT-TYPESYNTAXFcNameIdOrZeroMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The TPC target's port world-wide-name."::={ ctpcTargetEntry 3}ctpcTargetState OBJECT-TYPESYNTAX TpcTargetState
MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The current state of the TPC target"::={ ctpcTargetEntry 4}ctpcTargetNumXcopies OBJECT-TYPESYNTAXCounter32
UNITS"commands"MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The total number of XCOPY commands processed by the
TPC target since the module on which this target has
been configured has been online"::={ ctpcTargetEntry 5}ctpcTargetMinXcopy OBJECT-TYPESYNTAXGauge32UNITS"Kilobytes"MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The smallest amount of data in Kilobytes transferred
by the TPC target in a single xcopy command since the
module on which this target has been configured has
been online."::={ ctpcTargetEntry 6}ctpcTargetMaxXcopy OBJECT-TYPESYNTAXGauge32UNITS"Kilobytes"MAX-ACCESSread-only
STATUScurrentDESCRIPTION"The largest amount of data in Kilobytes transferred
by the TPC target in a single xcopy command since the
module on which this target has been configured has
been online."::={ ctpcTargetEntry 7}ctpcTargetAvgKbPerSec OBJECT-TYPESYNTAXGauge32UNITS"Kilobytes/second"MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The average kilobytes per second throughput of the
TPC target in processing the XCOPY commands."::={ ctpcTargetEntry 8}-- ConformancectpcMIBCompliances OBJECTIDENTIFIER::={ ciscoTpcMIBConformance 1}ctpcMIBGroups OBJECTIDENTIFIER::={ ciscoTpcMIBConformance 2}
ctpcMIBCompliance MODULE-COMPLIANCESTATUScurrentDESCRIPTION"The compliance statement for entities which
implement the CISCO-TPC-MIB mib."MODULEMANDATORY-GROUPS{ ctpcVsanTargetGroup }OBJECT ctpcVsanRowStatus
SYNTAXINTEGER{
active(1),
createAndGo(4),
destroy(6)}DESCRIPTION"Only values 'createAndGo', 'destroy' and
'active' need to be supported."::={ ctpcMIBCompliances 1}-- Units of ConformancectpcVsanTargetGroup OBJECT-GROUPOBJECTS{ ctpcModuleId,
ctpcVsanRowStatus,
ctpcTargetNodeName,
ctpcTargetPortName,
ctpcTargetState,
ctpcTargetNumXcopies,
ctpcTargetMinXcopy,
ctpcTargetMaxXcopy,
ctpcTargetAvgKbPerSec
}STATUScurrentDESCRIPTION"A collection of objects for displaying and
configuring the TPC target."::={ ctpcMIBGroups 1}END